package com.information.manage.model.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

@Data
@TableName("analysis_file")
@ApiModel(value="文件分析结果", description="")
public class AnalysisFileDo implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty("文件类型")
    private String fileType;

    /**
     * @see com.information.manage.common.constants.ListenTypeEnum
     */
    @ApiModelProperty("监听的文件类型")
    private Integer listenFileTypeCode;

    /**
     * 所属分类 Id
     */
    private Long classifyId;

    private String title;

    private String transTitle;
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date publishDate;

    private String keyword;

    private String author;

    private String language;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date scrapeDate;

    private String typeTag;

    private String url;

    private String abstractStr;

    private String transAbstract;

    private String path;

    private String summaryPath;

    private String summary;

    @ApiModelProperty("入库时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date storageTime;

    @ApiModelProperty("是否删除  0 未删除  1已删除")
    private Integer deleteData;

    @ApiModelProperty("修改时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date storageUpdateTime;

    // 富文本
    private String fwb;
}
